// 测试自增自减和复合赋值运算符
// let i = 0;
// let j = 0;
// let result = 0;

var i,j,result = 2;
console.log(i,j,result);
const a = 1
a = 2
console.log("a is", a)

// 测试后缀自增
console.log("===== 测试后缀自增 =====");
i = 10;
console.log("初始i值:", i);
result = i++;
console.log("i++ 结果:", result);
console.log("i++ 后的值:", i);

// 测试前缀自增
console.log("\n===== 测试前缀自增 =====");
i = 20;
console.log("初始i值:", i);
j = i; // 保存原始值
j = ++i; // 前缀自增并赋值
console.log("++i 结果:", j);
console.log("前缀自增后的i值:", i);

// 测试后缀自减
console.log("\n===== 测试后缀自减 =====");
i = 30;
console.log("初始i值:", i);
result = i--;
console.log("i-- 结果:", result);
console.log("i-- 后的值:", i);

// 测试前缀自减
console.log("\n===== 测试前缀自减 =====");
i = 40;
console.log("初始i值:", i);
j = --i;
console.log("--i 结果:", j);
console.log("--i 后的值:", i);

// 测试复合赋值运算符
console.log("\n===== 测试复合赋值运算符 =====");
i = 50;
console.log("初始i值:", i);
i += 5;
console.log("i += 5 后的值:", i);

i = 60;
console.log("\n初始i值:", i);
i -= 10;
console.log("i -= 10 后的值:", i);

i = 10;
console.log("\n初始i值:", i);
i *= 3;
console.log("i *= 3 后的值:", i);

i = 100;
console.log("\n初始i值:", i);
i /= 4;
console.log("i /= 4 后的值:", i);

i = 100;
console.log("\n初始i值:", i);
i %= 30;
console.log("i %= 30 后的值:", i);

// 测试浮点数自增
console.log("\n===== 测试浮点数自增 =====");
let f = 1.5;
console.log("初始f值:", f);
f++;
console.log("f++ 后的值:", f);

// 测试简单的前缀自增
console.log("\n===== 测试直接前缀自增 =====");
i = 5;
console.log("初始i值:", i);
++i; // 只有前缀自增，没有其他操作
console.log("执行 ++i 后的i值:", i);

// 测试前缀赋值自增
console.log("\n===== 测试前缀赋值自增 =====");
i = 15;
console.log("初始i值:", i);
let pre_inc = ++i;
console.log("赋值 pre_inc = ++i 的结果:", pre_inc);
console.log("++i 操作后的i值:", i);

// 测试前缀赋值自减
console.log("\n===== 测试前缀赋值自减 =====");
i = 25;
console.log("初始i值:", i);
let pre_dec = --i;
console.log("赋值 pre_dec = --i 的结果:", pre_dec);
console.log("--i 操作后的i值:", i); 